package vo

import (
	_ "encoding/json"
	_ "fmt"
)

/*
  在go的包中，凡是大写字母开头的在外部都是可以公开访问的，小写字母的不可以
*/
// 定义一个私有的结构体,外部是无法直接访问的
type duck struct {
	Name string // 公开的，相当于 public
	age  int    // 私有的，相当于 private
}

//创建一个工厂方法，返回内部的结构体的地址的指针
func DuckFactory(name string, age int) *duck {
	return &duck{name, age}
}

// 使用方法返回隐藏变量
func (d *duck) GetAge() int {
	return (*d).age
}

func (d *duck) SetAge(_age int) {
	(*d).age = _age
}

func main() {

}
